#ifndef RPCCOMMUNICATIONFRAME_HPP
#define RPCCOMMUNICATIONFRAME_HPP


class RpcCommunicationFrame
{
public:
    static RpcCommunicationFrame& GetRpcCommunicationFrame();

    // -i -file.conf , 我们整个项目从 -file.conf里面读取参数
    static void Init(int argc, char **argv);

    void ReadConfFlie(int argc,char** argv);

    void PrintAllConf();

private:
    RpcCommunicationFrame() {};

    // 由于是要在Init里面使用这个类，但是Init是static对象没有this指针，所以这里写出静态的，记得要在类外初始化
    
    // 单例模式，删除所有拷贝构造和右值引用
    RpcCommunicationFrame(const RpcCommunicationFrame &) = delete;
    RpcCommunicationFrame(const RpcCommunicationFrame &&) = delete;

    RpcCommunicationFrame &operator=(RpcCommunicationFrame &) = delete;
    RpcCommunicationFrame &operator=(RpcCommunicationFrame &&) = delete;
};

#endif